<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Doxygen: pcl::common::CloudGenerator&lt; PointT, GeneratorT &gt; 模板类 参考</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Doxygen
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- 制作者 Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'搜索','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','搜索');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('classpcl_1_1common_1_1_cloud_generator.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-types">Public 类型</a> &#124;
<a href="#pub-methods">Public 成员函数</a> &#124;
<a href="#pri-attribs">Private 属性</a> &#124;
<a href="classpcl_1_1common_1_1_cloud_generator-members.html">所有成员列表</a>  </div>
  <div class="headertitle">
<div class="title">pcl::common::CloudGenerator&lt; PointT, GeneratorT &gt; 模板类 参考</div>  </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public 类型</h2></td></tr>
<tr class="memitem:aff410bc5c637d33662cd2b4b08a5a84c"><td class="memItemLeft" align="right" valign="top"><a id="aff410bc5c637d33662cd2b4b08a5a84c"></a>
typedef GeneratorT::Parameters&#160;</td><td class="memItemRight" valign="bottom"><b>GeneratorParameters</b></td></tr>
<tr class="separator:aff410bc5c637d33662cd2b4b08a5a84c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public 成员函数</h2></td></tr>
<tr class="memitem:afd793e96cb5530ccf1b978fcc9a5c042"><td class="memItemLeft" align="right" valign="top"><a id="afd793e96cb5530ccf1b978fcc9a5c042"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1common_1_1_cloud_generator.html#afd793e96cb5530ccf1b978fcc9a5c042">CloudGenerator</a> ()</td></tr>
<tr class="memdesc:afd793e96cb5530ccf1b978fcc9a5c042"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor <br /></td></tr>
<tr class="separator:afd793e96cb5530ccf1b978fcc9a5c042"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4530823139f496b23faf86297702865a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1common_1_1_cloud_generator.html#a4530823139f496b23faf86297702865a">CloudGenerator</a> (const GeneratorParameters &amp;params)</td></tr>
<tr class="separator:a4530823139f496b23faf86297702865a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d386323d1e5e58a4731692fe2cbebff"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1common_1_1_cloud_generator.html#a7d386323d1e5e58a4731692fe2cbebff">CloudGenerator</a> (const GeneratorParameters &amp;x_params, const GeneratorParameters &amp;y_params, const GeneratorParameters &amp;z_params)</td></tr>
<tr class="separator:a7d386323d1e5e58a4731692fe2cbebff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89b305ed3d18f9871944619f79afd73f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1common_1_1_cloud_generator.html#a89b305ed3d18f9871944619f79afd73f">setParameters</a> (const GeneratorParameters &amp;params)</td></tr>
<tr class="separator:a89b305ed3d18f9871944619f79afd73f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2e45e3f6c5169b6342b87499cb00f80"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1common_1_1_cloud_generator.html#ad2e45e3f6c5169b6342b87499cb00f80">setParametersForX</a> (const GeneratorParameters &amp;x_params)</td></tr>
<tr class="separator:ad2e45e3f6c5169b6342b87499cb00f80"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a444a3161768eb2a366d2c71a0d08b873"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1common_1_1_cloud_generator.html#a444a3161768eb2a366d2c71a0d08b873">setParametersForY</a> (const GeneratorParameters &amp;y_params)</td></tr>
<tr class="separator:a444a3161768eb2a366d2c71a0d08b873"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7187ea71128a9098e90c4ac7b42b1c87"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1common_1_1_cloud_generator.html#a7187ea71128a9098e90c4ac7b42b1c87">setParametersForZ</a> (const GeneratorParameters &amp;z_params)</td></tr>
<tr class="separator:a7187ea71128a9098e90c4ac7b42b1c87"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21a5130f5eec6a99495918df34ee7c76"><td class="memItemLeft" align="right" valign="top">const GeneratorParameters &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1common_1_1_cloud_generator.html#a21a5130f5eec6a99495918df34ee7c76">getParametersForX</a> () const</td></tr>
<tr class="separator:a21a5130f5eec6a99495918df34ee7c76"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b0dd22ef782ccc11320165676c169e6"><td class="memItemLeft" align="right" valign="top">const GeneratorParameters &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1common_1_1_cloud_generator.html#a5b0dd22ef782ccc11320165676c169e6">getParametersForY</a> () const</td></tr>
<tr class="separator:a5b0dd22ef782ccc11320165676c169e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63e4e8f5c5a472b9ea7b3da805df739d"><td class="memItemLeft" align="right" valign="top">const GeneratorParameters &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1common_1_1_cloud_generator.html#a63e4e8f5c5a472b9ea7b3da805df739d">getParametersForZ</a> () const</td></tr>
<tr class="separator:a63e4e8f5c5a472b9ea7b3da805df739d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2e0dc431c39940d041b6766088b6a51"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1common_1_1_cloud_generator.html#ad2e0dc431c39940d041b6766088b6a51">get</a> ()</td></tr>
<tr class="separator:ad2e0dc431c39940d041b6766088b6a51"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0c96c6465b37ab431591d8ed1cdd96c6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1common_1_1_cloud_generator.html#a0c96c6465b37ab431591d8ed1cdd96c6">fill</a> (<a class="el" href="classpcl_1_1_point_cloud.html">pcl::PointCloud</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt; &amp;cloud)</td></tr>
<tr class="separator:a0c96c6465b37ab431591d8ed1cdd96c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c8e5697c91dc63dad6a14d8adc0ff84"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1common_1_1_cloud_generator.html#a3c8e5697c91dc63dad6a14d8adc0ff84">fill</a> (int width, int height, <a class="el" href="classpcl_1_1_point_cloud.html">pcl::PointCloud</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt; &amp;cloud)</td></tr>
<tr class="separator:a3c8e5697c91dc63dad6a14d8adc0ff84"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
Private 属性</h2></td></tr>
<tr class="memitem:a2632d50c9ad9a3f24fd73c6463f8e341"><td class="memItemLeft" align="right" valign="top"><a id="a2632d50c9ad9a3f24fd73c6463f8e341"></a>
GeneratorT&#160;</td><td class="memItemRight" valign="bottom"><b>x_generator_</b></td></tr>
<tr class="separator:a2632d50c9ad9a3f24fd73c6463f8e341"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3bad5f873163b1c68e235da76fffa834"><td class="memItemLeft" align="right" valign="top"><a id="a3bad5f873163b1c68e235da76fffa834"></a>
GeneratorT&#160;</td><td class="memItemRight" valign="bottom"><b>y_generator_</b></td></tr>
<tr class="separator:a3bad5f873163b1c68e235da76fffa834"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7cf5334792f6b7e24ff7f4c16770771b"><td class="memItemLeft" align="right" valign="top"><a id="a7cf5334792f6b7e24ff7f4c16770771b"></a>
GeneratorT&#160;</td><td class="memItemRight" valign="bottom"><b>z_generator_</b></td></tr>
<tr class="separator:a7cf5334792f6b7e24ff7f4c16770771b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">构造及析构函数说明</h2>
<a id="a4530823139f496b23faf86297702865a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4530823139f496b23faf86297702865a">&#9670;&nbsp;</a></span>CloudGenerator() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename GeneratorT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classpcl_1_1common_1_1_cloud_generator.html">pcl::common::CloudGenerator</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, GeneratorT &gt;::<a class="el" href="classpcl_1_1common_1_1_cloud_generator.html">CloudGenerator</a> </td>
          <td>(</td>
          <td class="paramtype">const GeneratorParameters &amp;&#160;</td>
          <td class="paramname"><em>params</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Consttructor with single generator to ensure all X, Y and Z values are within same range </p><dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">params</td><td>paramteres for X, Y and Z values generation. Uniqueness is ensured through seed incrementation </td></tr>
  </table>
  </dd>
</dl>
<div class="fragment"><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;{</div>
<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;  <a class="code" href="classpcl_1_1common_1_1_cloud_generator.html#a89b305ed3d18f9871944619f79afd73f">setParameters</a> (params);</div>
<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;}</div>
<div class="ttc" id="aclasspcl_1_1common_1_1_cloud_generator_html_a89b305ed3d18f9871944619f79afd73f"><div class="ttname"><a href="classpcl_1_1common_1_1_cloud_generator.html#a89b305ed3d18f9871944619f79afd73f">pcl::common::CloudGenerator::setParameters</a></div><div class="ttdeci">void setParameters(const GeneratorParameters &amp;params)</div><div class="ttdef"><b>Definition:</b> generate.hpp:73</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a7d386323d1e5e58a4731692fe2cbebff"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7d386323d1e5e58a4731692fe2cbebff">&#9670;&nbsp;</a></span>CloudGenerator() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename GeneratorT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classpcl_1_1common_1_1_cloud_generator.html">pcl::common::CloudGenerator</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, GeneratorT &gt;::<a class="el" href="classpcl_1_1common_1_1_cloud_generator.html">CloudGenerator</a> </td>
          <td>(</td>
          <td class="paramtype">const GeneratorParameters &amp;&#160;</td>
          <td class="paramname"><em>x_params</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const GeneratorParameters &amp;&#160;</td>
          <td class="paramname"><em>y_params</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const GeneratorParameters &amp;&#160;</td>
          <td class="paramname"><em>z_params</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Constructor with independant generators per axis </p><dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">x_params</td><td>parameters for x values generation </td></tr>
    <tr><td class="paramname">y_params</td><td>parameters for y values generation </td></tr>
    <tr><td class="paramname">z_params</td><td>parameters for z values generation </td></tr>
  </table>
  </dd>
</dl>
<div class="fragment"><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;  : x_generator_ (x_params)</div>
<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;  , y_generator_ (y_params)</div>
<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;  , z_generator_ (z_params)</div>
<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;{}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">成员函数说明</h2>
<a id="a3c8e5697c91dc63dad6a14d8adc0ff84"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3c8e5697c91dc63dad6a14d8adc0ff84">&#9670;&nbsp;</a></span>fill() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename GeneratorT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="classpcl_1_1common_1_1_cloud_generator.html">pcl::common::CloudGenerator</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, GeneratorT &gt;::fill </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>width</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>height</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classpcl_1_1_point_cloud.html">pcl::PointCloud</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>cloud</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Generates a cloud of specified dimensions with X Y Z picked within given ranges. </p><dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">width</td><td>width of generated cloud </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">height</td><td>height of generated cloud </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">cloud</td><td>output cloud </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>返回</dt><dd>0 if generation went well else -1. </dd></dl>
<div class="fragment"><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;{</div>
<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;  <span class="keywordflow">if</span> (width &lt; 1)</div>
<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;  {</div>
<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;    PCL_ERROR (<span class="stringliteral">&quot;[pcl::common::CloudGenerator] Cloud width must be &gt;= 1!\n&quot;</span>);</div>
<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;    <span class="keywordflow">return</span> (-1);</div>
<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;  }</div>
<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;  </div>
<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;  <span class="keywordflow">if</span> (height &lt; 1)</div>
<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;  {</div>
<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;    PCL_ERROR (<span class="stringliteral">&quot;[pcl::common::CloudGenerator] Cloud height must be &gt;= 1!\n&quot;</span>);</div>
<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;    <span class="keywordflow">return</span> (-1);</div>
<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;  }</div>
<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;  </div>
<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;  <span class="keywordflow">if</span> (!cloud.empty ())</div>
<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;  {</div>
<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;    PCL_WARN (<span class="stringliteral">&quot;[pcl::common::CloudGenerator] Cloud data will be erased with new data!\n&quot;</span>);</div>
<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;  }</div>
<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;  </div>
<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;  cloud.<a class="code" href="classpcl_1_1_point_cloud.html#a2185a6453f8ad905d7bdf7b45754a160">width</a> = width;</div>
<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;  cloud.<a class="code" href="classpcl_1_1_point_cloud.html#a4f34b45220c57f96607513ffad0d9582">height</a> = height;</div>
<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;  cloud.<a class="code" href="classpcl_1_1_point_cloud.html#a2d60b6927b31ef89cd3b97e8173ea4aa">resize</a> (cloud.<a class="code" href="classpcl_1_1_point_cloud.html#a2185a6453f8ad905d7bdf7b45754a160">width</a> * cloud.<a class="code" href="classpcl_1_1_point_cloud.html#a4f34b45220c57f96607513ffad0d9582">height</a>);</div>
<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;  cloud.<a class="code" href="classpcl_1_1_point_cloud.html#a3ca88d8ebf6f4f35acbc31cdfb38aa94">is_dense</a> = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;  <span class="keywordflow">for</span> (<span class="keyword">typename</span> pcl::PointCloud&lt;PointT&gt;::iterator points_it = cloud.begin ();</div>
<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;       points_it != cloud.end ();</div>
<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;       ++points_it)</div>
<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;  {</div>
<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;    points_it-&gt;x = x_generator_.run ();</div>
<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;    points_it-&gt;y = y_generator_.run ();</div>
<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;    points_it-&gt;z = z_generator_.run ();</div>
<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;  }</div>
<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;  <span class="keywordflow">return</span> (0);</div>
<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;}</div>
<div class="ttc" id="aclasspcl_1_1_point_cloud_html_a2185a6453f8ad905d7bdf7b45754a160"><div class="ttname"><a href="classpcl_1_1_point_cloud.html#a2185a6453f8ad905d7bdf7b45754a160">pcl::PointCloud::width</a></div><div class="ttdeci">uint32_t width</div><div class="ttdoc">The point cloud width (if organized as an image-structure).</div><div class="ttdef"><b>Definition:</b> point_cloud.h:413</div></div>
<div class="ttc" id="aclasspcl_1_1_point_cloud_html_a2d60b6927b31ef89cd3b97e8173ea4aa"><div class="ttname"><a href="classpcl_1_1_point_cloud.html#a2d60b6927b31ef89cd3b97e8173ea4aa">pcl::PointCloud::resize</a></div><div class="ttdeci">void resize(size_t n)</div><div class="ttdoc">Resize the cloud</div><div class="ttdef"><b>Definition:</b> point_cloud.h:455</div></div>
<div class="ttc" id="aclasspcl_1_1_point_cloud_html_a3ca88d8ebf6f4f35acbc31cdfb38aa94"><div class="ttname"><a href="classpcl_1_1_point_cloud.html#a3ca88d8ebf6f4f35acbc31cdfb38aa94">pcl::PointCloud::is_dense</a></div><div class="ttdeci">bool is_dense</div><div class="ttdoc">True if no points are invalid (e.g., have NaN or Inf values).</div><div class="ttdef"><b>Definition:</b> point_cloud.h:418</div></div>
<div class="ttc" id="aclasspcl_1_1_point_cloud_html_a4f34b45220c57f96607513ffad0d9582"><div class="ttname"><a href="classpcl_1_1_point_cloud.html#a4f34b45220c57f96607513ffad0d9582">pcl::PointCloud::height</a></div><div class="ttdeci">uint32_t height</div><div class="ttdoc">The point cloud height (if organized as an image-structure).</div><div class="ttdef"><b>Definition:</b> point_cloud.h:415</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a0c96c6465b37ab431591d8ed1cdd96c6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0c96c6465b37ab431591d8ed1cdd96c6">&#9670;&nbsp;</a></span>fill() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename GeneratorT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="classpcl_1_1common_1_1_cloud_generator.html">pcl::common::CloudGenerator</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, GeneratorT &gt;::fill </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classpcl_1_1_point_cloud.html">pcl::PointCloud</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>cloud</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Generates a cloud with X Y Z picked within given ranges. This function assumes that cloud is properly defined else it raises errors and does nothing. </p><dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">cloud</td><td>cloud to generate coordinates for </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>返回</dt><dd>0 if generation went well else -1. </dd></dl>
<div class="fragment"><div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;{</div>
<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;  <span class="keywordflow">return</span> (<a class="code" href="classpcl_1_1common_1_1_cloud_generator.html#a0c96c6465b37ab431591d8ed1cdd96c6">fill</a> (cloud.<a class="code" href="classpcl_1_1_point_cloud.html#a2185a6453f8ad905d7bdf7b45754a160">width</a>, cloud.<a class="code" href="classpcl_1_1_point_cloud.html#a4f34b45220c57f96607513ffad0d9582">height</a>, cloud));</div>
<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;}</div>
<div class="ttc" id="aclasspcl_1_1common_1_1_cloud_generator_html_a0c96c6465b37ab431591d8ed1cdd96c6"><div class="ttname"><a href="classpcl_1_1common_1_1_cloud_generator.html#a0c96c6465b37ab431591d8ed1cdd96c6">pcl::common::CloudGenerator::fill</a></div><div class="ttdeci">int fill(pcl::PointCloud&lt; PointT &gt; &amp;cloud)</div><div class="ttdef"><b>Definition:</b> generate.hpp:139</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="ad2e0dc431c39940d041b6766088b6a51"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad2e0dc431c39940d041b6766088b6a51">&#9670;&nbsp;</a></span>get()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename GeneratorT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> <a class="el" href="classpcl_1_1common_1_1_cloud_generator.html">pcl::common::CloudGenerator</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, GeneratorT &gt;::get</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>返回</dt><dd>a single random generated point </dd></dl>
<div class="fragment"><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;{</div>
<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;  <a class="code" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> p;</div>
<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;  p.x = x_generator_.run ();</div>
<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;  p.y = y_generator_.run ();</div>
<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;  p.z = z_generator_.run ();</div>
<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;  <span class="keywordflow">return</span> (p);</div>
<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;}</div>
<div class="ttc" id="astructpcl_1_1_point_x_y_z_r_g_b_a_html"><div class="ttname"><a href="structpcl_1_1_point_x_y_z_r_g_b_a.html">pcl::PointXYZRGBA</a></div><div class="ttdoc">A point structure representing Euclidean xyz coordinates, and the RGBA color.</div><div class="ttdef"><b>Definition:</b> point_types.hpp:540</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a21a5130f5eec6a99495918df34ee7c76"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a21a5130f5eec6a99495918df34ee7c76">&#9670;&nbsp;</a></span>getParametersForX()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename GeneratorT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classpcl_1_1common_1_1_cloud_generator.html">pcl::common::CloudGenerator</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, GeneratorT &gt;::GeneratorParameters &amp; <a class="el" href="classpcl_1_1common_1_1_cloud_generator.html">pcl::common::CloudGenerator</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, GeneratorT &gt;::getParametersForX</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>返回</dt><dd>x values generation parameters </dd></dl>
<div class="fragment"><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;{</div>
<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;  x_generator_.getParameters ();</div>
<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a5b0dd22ef782ccc11320165676c169e6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5b0dd22ef782ccc11320165676c169e6">&#9670;&nbsp;</a></span>getParametersForY()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename GeneratorT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classpcl_1_1common_1_1_cloud_generator.html">pcl::common::CloudGenerator</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, GeneratorT &gt;::GeneratorParameters &amp; <a class="el" href="classpcl_1_1common_1_1_cloud_generator.html">pcl::common::CloudGenerator</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, GeneratorT &gt;::getParametersForY</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>返回</dt><dd>y values generation parameters </dd></dl>
<div class="fragment"><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;{</div>
<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;  y_generator_.getParameters ();</div>
<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a63e4e8f5c5a472b9ea7b3da805df739d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a63e4e8f5c5a472b9ea7b3da805df739d">&#9670;&nbsp;</a></span>getParametersForZ()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename GeneratorT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classpcl_1_1common_1_1_cloud_generator.html">pcl::common::CloudGenerator</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, GeneratorT &gt;::GeneratorParameters &amp; <a class="el" href="classpcl_1_1common_1_1_cloud_generator.html">pcl::common::CloudGenerator</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, GeneratorT &gt;::getParametersForZ</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>返回</dt><dd>z values generation parameters </dd></dl>
<div class="fragment"><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;{</div>
<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;  z_generator_.getParameters ();</div>
<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a89b305ed3d18f9871944619f79afd73f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a89b305ed3d18f9871944619f79afd73f">&#9670;&nbsp;</a></span>setParameters()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename GeneratorT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classpcl_1_1common_1_1_cloud_generator.html">pcl::common::CloudGenerator</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, GeneratorT &gt;::setParameters </td>
          <td>(</td>
          <td class="paramtype">const GeneratorParameters &amp;&#160;</td>
          <td class="paramname"><em>params</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set parameters for x, y and z values. Uniqueness is ensured through seed incrementation. </p><dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">params</td><td>parameteres for X, Y and Z values generation. </td></tr>
  </table>
  </dd>
</dl>
<div class="fragment"><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;{</div>
<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;  GeneratorParameters y_params = params;</div>
<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;  y_params.seed += 1;</div>
<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;  GeneratorParameters z_params = y_params;</div>
<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;  z_params.seed += 1;</div>
<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;  x_generator_.setParameters (params);</div>
<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;  y_generator_.setParameters (y_params);</div>
<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;  z_generator_.setParameters (z_params);  </div>
<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ad2e45e3f6c5169b6342b87499cb00f80"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad2e45e3f6c5169b6342b87499cb00f80">&#9670;&nbsp;</a></span>setParametersForX()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename GeneratorT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classpcl_1_1common_1_1_cloud_generator.html">pcl::common::CloudGenerator</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, GeneratorT &gt;::setParametersForX </td>
          <td>(</td>
          <td class="paramtype">const GeneratorParameters &amp;&#160;</td>
          <td class="paramname"><em>x_params</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set parameters for x values generation </p><dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">x_params</td><td>paramters for x values generation </td></tr>
  </table>
  </dd>
</dl>
<div class="fragment"><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;{</div>
<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;  x_generator_.setParameters (x_params);</div>
<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a444a3161768eb2a366d2c71a0d08b873"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a444a3161768eb2a366d2c71a0d08b873">&#9670;&nbsp;</a></span>setParametersForY()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename GeneratorT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classpcl_1_1common_1_1_cloud_generator.html">pcl::common::CloudGenerator</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, GeneratorT &gt;::setParametersForY </td>
          <td>(</td>
          <td class="paramtype">const GeneratorParameters &amp;&#160;</td>
          <td class="paramname"><em>y_params</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set parameters for y values generation </p><dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">y_params</td><td>paramters for y values generation </td></tr>
  </table>
  </dd>
</dl>
<div class="fragment"><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;{</div>
<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;  y_generator_.setParameters (y_params);</div>
<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a7187ea71128a9098e90c4ac7b42b1c87"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7187ea71128a9098e90c4ac7b42b1c87">&#9670;&nbsp;</a></span>setParametersForZ()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename GeneratorT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classpcl_1_1common_1_1_cloud_generator.html">pcl::common::CloudGenerator</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, GeneratorT &gt;::setParametersForZ </td>
          <td>(</td>
          <td class="paramtype">const GeneratorParameters &amp;&#160;</td>
          <td class="paramname"><em>z_params</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set parameters for z values generation </p><dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">z_params</td><td>paramters for z values generation </td></tr>
  </table>
  </dd>
</dl>
<div class="fragment"><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;{</div>
<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;  z_generator_.setParameters (z_params);</div>
<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<hr/>该类的文档由以下文件生成:<ul>
<li>common/include/pcl/common/<a class="el" href="generate_8h_source.html">generate.h</a></li>
<li>common/include/pcl/common/impl/<a class="el" href="generate_8hpp_source.html">generate.hpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><b>pcl</b></li><li class="navelem"><b>common</b></li><li class="navelem"><a class="el" href="classpcl_1_1common_1_1_cloud_generator.html">CloudGenerator</a></li>
    <li class="footer">制作者 <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1 </li>
  </ul>
</div>
</body>
</html>
